<?php

        const codiResponsable = 'codiResponsable';
        const organitzacio = 'organitzacio';
        const contrasenyaMD5 = 'contrasenyaMD5';
        const nom = 'nom';
        const cognom1 = 'cognom1';
        const cognom2 = 'cognom2';
        const telefon = 'telefon';
        const correu = 'correu';
        const idioma = 'idioma';
        const foto = 'foto';
        const actiuResponsable = 'actiuResponsable';
        const potCrear = 'potCrear';
        const contrasenyaSHA1 = 'contrasenyaSHA1';

if ($_SESSION["accio"] == 'autenticar') {
    $accio = "autenticar";
} else {
    $accio = $_GET['accio'];
}

if ($accio == 'omplirSelect') {
    processOmplirSelect();
    exit();
} else {
    if ($accio == 'create') {
        processCreate();
    } else {
        if ($accio == 'update') {
            processUpdate();
        } else {
            if ($accio == 'delete') {
                processDelete();
            } else {
                if ($accio == 'autenticar') {
                    processAutenticar();
                }
            }
        }
    }
}

function processOmplirSelect() {
    require('../persistent/Responsable.php');
    $bd = new Basededatos();
    $bd->conectar();
    $responsable = new Responsable($bd);
    $responsable->getLlista();
    $i = 0;
    $jsondata = array();
    foreach ($responsable->llista as $elem) {
        $jsondata[$i]['codiResponsable'] = $elem['codiResponsable'];
        $jsondata[$i]['organitzacio'] = $elem['organitzacio'];
        $jsondata[$i]['contrasenyaMD5'] = $elem['contrasenyaMD5'];
        $jsondata[$i]['nom'] = $elem['nom'];
        $jsondata[$i]['cognom1'] = $elem['cognom1'];
        $jsondata[$i]['cognom2'] = $elem['cognom2'];
        $jsondata[$i]['telefon'] = $elem['telefon'];
        $jsondata[$i]['correu'] = $elem['correu'];
        $jsondata[$i]['idioma'] = $elem['idioma'];
        $jsondata[$i]['foto'] = $elem['foto'];
        $jsondata[$i]['actiuResponsable'] = $elem['actiuResponsable'];
        $jsondata[$i]['potCrear'] = $elem['potCrear'];
        $jsondata[$i]['contrasenyaSHA1'] = $elem['contrasenyaSHA1'];
        if (isset($_SESSION['responsableSelected']) && $_SESSION['responsableSelected'] == $elem['codiResponsable']) {
            $jsondata[$i]['responsableSelected'] = "SELECTED";
        } else {
            $jsondata[$i]['responsableSelected'] = "";
        }
        $i++;
    }
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processCreate() {
    require('../persistent/Responsable.php');
    $bd = new Basededatos();
    $bd->conectar();
    $responsable = new Responsable($bd);
    $responsable->getLlista();
    $i = 0;
    $jsondata = array();

    foreach ($responsable->llista as $elem) {
        $jsondata[$i]['codiResponsable'] = $elem['codiResponsable'];
        $jsondata[$i]['organitzacio'] = $elem['organitzacio'];
        $jsondata[$i]['contrasenyaMD5'] = $elem['contrasenyaMD5'];
        $jsondata[$i]['nom'] = $elem['nom'];
        $jsondata[$i]['cognom1'] = $elem['cognom1'];
        $jsondata[$i]['cognom2'] = $elem['cognom2'];
        $jsondata[$i]['telefon'] = $elem['telefon'];
        $jsondata[$i]['correu'] = $elem['correu'];
        $jsondata[$i]['idioma'] = $elem['idioma'];
        $jsondata[$i]['foto'] = $elem['foto'];
        $jsondata[$i]['actiuResponsable'] = $elem['actiuResponsable'];
        $jsondata[$i]['potCrear'] = $elem['potCrear'];
        $jsondata[$i]['contrasenyaSHA1'] = $elem['contrasenyaSHA1'];
        $i++;
    }
    $datos = array();
    $datos[0] = 'FR';
    $datos[1] = 'FRAN';
    $responsable->createEntitat($datos);
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processUpdate() {
    require('../persistent/Responsable.php');
    $bd = new Basededatos();
    $bd->conectar();
    $responsable = new Responsable($bd);
    $responsable->getLlista();
    $i = 0;
    $jsondata = array();

    foreach ($responsable->llista as $elem) {
        $jsondata[$i]['codiResponsable'] = $elem['codiResponsable'];
        $jsondata[$i]['organitzacio'] = $elem['organitzacio'];
        $jsondata[$i]['contrasenyaMD5'] = $elem['contrasenyaMD5'];
        $jsondata[$i]['nom'] = $elem['nom'];
        $jsondata[$i]['cognom1'] = $elem['cognom1'];
        $jsondata[$i]['cognom2'] = $elem['cognom2'];
        $jsondata[$i]['telefon'] = $elem['telefon'];
        $jsondata[$i]['correu'] = $elem['correu'];
        $jsondata[$i]['idioma'] = $elem['idioma'];
        $jsondata[$i]['foto'] = $elem['foto'];
        $jsondata[$i]['actiuResponsable'] = $elem['actiuResponsable'];
        $jsondata[$i]['potCrear'] = $elem['potCrear'];
        $jsondata[$i]['contrasenyaSHA1'] = $elem['contrasenyaSHA1'];
        $i++;
    }
    $datos = array();
    $datos[0] = 'FR';
    $datos[1] = 'FRANCIA';
    $claus = array();
    $claus[0] = 'FR';
    $responsable->updateEntitat($claus, $datos);
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processDelete() {
    require('../persistent/Responsable.php');
    $bd = new Basededatos();
    $bd->conectar();
    $responsable = new Responsable($bd);
    $responsable->getLlista();
    $i = 0;
    $jsondata = array();

    foreach ($responsable->llista as $elem) {
        $jsondata[$i]['codiResponsable'] = $elem['codiResponsable'];
        $jsondata[$i]['organitzacio'] = $elem['organitzacio'];
        $jsondata[$i]['contrasenyaMD5'] = $elem['contrasenyaMD5'];
        $jsondata[$i]['nom'] = $elem['nom'];
        $jsondata[$i]['cognom1'] = $elem['cognom1'];
        $jsondata[$i]['cognom2'] = $elem['cognom2'];
        $jsondata[$i]['telefon'] = $elem['telefon'];
        $jsondata[$i]['correu'] = $elem['correu'];
        $jsondata[$i]['idioma'] = $elem['idioma'];
        $jsondata[$i]['foto'] = $elem['foto'];
        $jsondata[$i]['actiuResponsable'] = $elem['actiuResponsable'];
        $jsondata[$i]['potCrear'] = $elem['potCrear'];
        $jsondata[$i]['contrasenyaSHA1'] = $elem['contrasenyaSHA1'];
        $i++;
    }
    $claus = array();
    $claus[0] = 'FR';
    $responsable->deleteEntitat($claus);
    echo json_encode($jsondata);
    $bd->cerrar();
}

function processAutenticar() {
    if (!file_exists('./persistent/Responsable.php')) {
        require('../persistent/Responsable.php');
    } else {
        require('./persistent/Responsable.php');
    }
    if (isset($_POST['usuari'])) {
        $bd = new Basededatos();
        $bd->conectar();
        $responsable = new Responsable($bd);
        $datos = array();
        $datos[0] = $_POST['usuari'];
        $datos[1] = $_POST['organitzacio'];
        $datos[2] = md5($_POST['contrasenya']);
        $datos[3] = sha1($_POST['contrasenya']);
        $responsable->comprovaAutenticacio($datos);
        $bd->cerrar();
    }
}

?>
